/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package beans;

import org.apache.commons.codec.digest.DigestUtils; 
import controllers.UtenteFacade;
import entities.Utente;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;
import javax.inject.Inject;
import javax.inject.Named;

/**
 *
 * @author riccardo
 */
@ManagedBean
@RequestScoped
@Named(value = "registration")

public class Registration {

    private Utente utente;

    public Utente getUtente() {
        return utente;
    }

    public void setUtente(Utente utente) {
        this.utente = utente;
    }

    public UtenteFacade getEao() {
        return eao;
    }

    public void setEao(UtenteFacade eao) {
        this.eao = eao;
    }
    @Inject
    private UtenteFacade eao;

    /**
     * Creates a new instance of Registration
     */
    public Registration() {
        utente = new Utente();
    }

    public String register() {
        utente.setIdUTENTE(FacesContext.getCurrentInstance().getCurrentInstance().hashCode());  //non è più necessario perchè abbiamo messo l'id auto_increment
        //utente.setGruppo("utente");  // per togliere questo, mettere un valore di default nel database
        if(utente.getPrenotazioniCollection() == null)
                System.out.println("wtf");
              System.out.println(utente.getIdUTENTE());
              System.out.println(utente.getGruppo());
              System.out.println(utente.getPassword());
              System.out.println(DigestUtils.sha512Hex(utente.getPassword()));
        utente.setPassword(DigestUtils.sha512Hex(utente.getPassword()));
        eao.create(utente);
        
        
        
        return "/faces/success.xhtml";
    }
    
    public String logout() {
        FacesContext.getCurrentInstance().getExternalContext().invalidateSession();
        return "/faces/index.xhtml?faces-redirect=true";

    }
}
